網路上的即時文件協作中,除了 Google Documents 系列外,HackMD 也走出了一條自己的路。它採用 Markdown 語法,用起來非常的順手。CodiMD是其開源的版本。不過由於維護方的不同,而有以下兩種版本:
經由比較文件內容和佈署容易度後,選用 CodiMD 來安裝。
version: "3"
services:
database:
image: postgres:11.6-alpine
environment:
- POSTGRES_USER=<DB_USER_NAME>
- POSTGRES_PASSWORD=<DB_PASSWORD>
- POSTGRES_DB=codimdDB<DB_NAME>
volumes:
- "database-data:/var/lib/postgresql/data"
ports:
- "3419:3419" # port 可自訂
restart: always
codimd:
image: hackmdio/hackmd:2.4.1
environment:
- CMD_DB_URL=postgres://<DB_USER_NAME>:<DB_PASSWORD>@database/<DB_NAME>
- CMD_USECDN=false
depends_on:
- database
ports:
- "3000:3000" # 前端 app 預設是開啟 3000
volumes:
- upload-data:/home/hackmd/app/public/uploads
restart: always
# volumes 提供 container 保存資料或共享資料,避免一 docker-compose down 就資料遺失
volumes:
database-data: {}
upload-data: {}
docker-compose.yml
檔案,存放到遠端的 Server 內。像是 /user/codimdcd usr/codimd
docker-compose up
docker ps
,來看看所建的 container 狀況CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f3bbabb15f8c hackmdio/hackmd:2.4.1 "/home/hackmd/app/do…" 24 hours ago Up 24 hours 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp codimd_codimd_1
3459ebc2a582 postgres:11.6-alpine "docker-entrypoint.s…" 24 hours ago Up 24 hours 0.0.0.0:3419->3419/tcp, :::3419->3419/tcp, 5432/tcp codimd_database_1
<IP Address>:3000
,就可以連入version: "3"
services:
codimd:
image: hackmdio/hackmd:2.4.1
environment:
......
- CMD_PORT=6000
depends_on:
- ......
ports:
- "6000:6000"
不過我實際照 Github 上的提問執行後,目前還是沒辦法成功。